This invention relates generally to the depiction of images on color display systems, and particularly to the use of halftone color screening to efficiently store and process images in computers for display on a monitor or printer.
Common color or monochrome graphics systems, such as laser printers or cathode ray tubes (CRTs) display images by marking pixels on a rectangular grid. Such systems may typically have a resolution of 300 pixels/inch in each direction. Many of these graphics systems employ binary pixels meaning they use only one bit of memory for each color of each pixel in order to save on memory. This means that for a typical color printer that can mark in three primary colors (e.g., cyan, magenta and yellow), each pixel can only be marked in one of 8 color combinations. In order to display the desired number of color gradations, a halftone or dithering technique is used. In this technique, a pattern of pixels (the "halftone cell pattern") is chosen such that the halftone cell can be replicated to cover the display area and that each pixel belongs to exactly one halftone cell. In a common technique the halftone cell pattern is a square of a given size, oriented at a given angle with respect to the bottom edge of the display.
As the color intensity of an image goes from low to high, pixels in the halftone cell are turned on in a fixed order. The order of illumination of the pixels can be illustrated by numbering the pixels from 0 to n-1 where n is the number of pixels in the halftone cell. A common order of illumination or "spot function" illuminates pixels in the order of increasing distance from the center of the halftone cell. This spot function gives a roughly circular peak of color centered in each cell, and is known as a single peak spot function.
Each shade of color displayable by a monitor or printer may thus be associated with its own set of primary color halftone cells, one for each primary color. Any number of sizes, orientations, or spot functions may be used to define halftone cells.
The prior art techniques for generating halftone images generally begin by the user selecting a color setting for the current component of the image. Images are always drawn as a sequence of components where each component is painted with a single fixed color setting. An example of a color component setting for a 3 color printer might be 50 percent cyan, 30 percent magenta, 10 percent yellow.
The second step is computing the halftone cell pattern for each primary color that is to be used in displaying the current component, and determining exactly which pixels in each halftone cell are to be turned on to result in a display with the desired shade and intensity. At this point there is a replicated pattern of halftone cells for each primary color, each with a fixed pattern of on and off pixels in the cell that approximates the desired intensity for that primary color. The size, shape, and angle of the halftone cell, and the spot function may be different for each primary color.
The final step is to paint the desired component of the image, using the superposition of the halftone cell patterns for each primary color to determine how to paint each pixel of the component. The color for each pixel of the image component is determined by combining the corresponding pixels of the replicated halftone cell patterns for each primary color. A pixel of the displayed image is painted with a given primary color if and only if the pixel was part of the image component and the pixel was turned on in the replicated halftone cell pattern for that primary color. Each pixel may be painted with any combination of the possible primary colors.
A well known problem with the prior art halftone cell approach described above is the tradeoff between the number of color intensities that can be represented and the resolution of detail in the image. For example, comparing a 8.times.8 halftone cell and a 4.times.4 halftone cell, both with single peak spot functions, the 8.times.8 cell will give 64 possible color intensities, and the 4.times.4 cell will give only 16 possible color intensities. However, the 4.times.4 cell will give much better perceived resolution of detail at medium intensities because the spots of color will be closer together. One prior art remedy to this problem is described in U.S. Pat. No. 4,837,613, where halftone cells are comprised of pixels which may themselves vary in intensity, thus requiring smaller halftone cell patterns to achieve the same range of color intensities. However, such a scheme the use of variable-intensity pixels instead of binary pixels requires additional memory to define the intensity with which each pixel is to be displayed.